#include "RandomDialog.h"
#include "../BBox.h"

RandomDialog::RandomDialog( wxWindow* parent )
:
Random_Dialog_Base( parent )
{

}


bool RandomDialog::TransferDataFromWindow()
{
    BBox bbox;
    double minValue, maxValue;
    double aux;

    minx_textCtrl->GetValue().ToDouble(&aux);
    bbox.pMin.x = aux;
    miny_textCtrl->GetValue().ToDouble(&aux);
    bbox.pMin.y = aux;
    minz_textCtrl->GetValue().ToDouble(&aux);
    bbox.pMin.z = aux;

    x_textCtrl->GetValue().ToDouble(&aux);
    bbox.pMax.x = aux;
    y_textCtrl->GetValue().ToDouble(&aux);
    bbox.pMax.y = aux;
    z_textCtrl->GetValue().ToDouble(&aux);
    bbox.pMax.z = aux;

    minValue_textCtrl->GetValue().ToDouble(&minValue);
    maxValue_textCtrl->GetValue().ToDouble(&maxValue);

    randomData = new RandomData(bbox, minValue, maxValue);

    return true;
}


void RandomDialog::onOK( wxCommandEvent& event )
{
    if ( Validate() && TransferDataFromWindow() )
    {
        if ( IsModal() )
             EndModal(wxID_OK); // If modal
        else
        {
             SetReturnCode(wxID_OK);
             this->Show(false); // If modeless
        }
    }
}


RandomData* RandomDialog::getRandomData()
{
	return randomData;
}
